package com.hutianao.gqgl.department.service;

import com.hutianao.gqgl.department.entity.SearchDepartmentEntity;
import com.hutianao.gqgl.job.entity.SearchJobEntity;
import com.hutianao.gqgl.mybatis.entity.PtDepartmentEntity;
import com.hutianao.gqgl.mybatis.entity.PtJobEntity;
import com.hutianao.gqgl.mybatis.entity.PtUserEntity;
import com.hutianao.gqgl.mybatis.flexigrid.PaddingEntity;
import com.hutianao.gqgl.mybatis.flexigrid.PadingRstType;
import com.hutianao.gqgl.mybatis.ztree.ZtreeEntity;
import org.apache.ibatis.annotations.Param;
import org.springframework.jdbc.UncategorizedSQLException;

import java.util.List;

public interface DepartmentService {
    List<ZtreeEntity> queryLeftTree();
    boolean deleteDepartInfoByIds(String depUuid);

    void unboundParentIdByDepUuid(String depUuid);

    PtDepartmentEntity queryDepartListById(String depUuid);

    List<ZtreeEntity> queryBoundDepartTree(String depUuid);

    void saveParentIdByDepUuid(String depUuid, String belongCenter);

    List<ZtreeEntity> queryDepartTree(String depUuid);

    void saveBelongCenterIdByDepUuid(String depUuid, String belongCenter);
    PadingRstType<PtDepartmentEntity> queryDepartInfoListById(String depUuid, PaddingEntity padding) ;

    PadingRstType<PtDepartmentEntity> queryDepartInfoListByPage(SearchJobEntity search, PaddingEntity padding);
    PadingRstType<PtUserEntity> queryUserInfoListByPage(SearchDepartmentEntity entity, PaddingEntity paddingEntity);

    void addDepartInfo(PtDepartmentEntity ptDepartEntity);

    void updateDepartById(PtDepartmentEntity ptDepartEntity);
    PadingRstType<PtUserEntity> queryUserListByPage(SearchDepartmentEntity entity, PaddingEntity paddingEntity);
    PadingRstType<PtJobEntity> queryDutyListByPage(SearchDepartmentEntity entity, PaddingEntity paddingEntity);
}
